home *** CD-ROM | disk | FTP | other *** search
/ The World of Computer Software / The World of Computer Software.iso / mvssrc.zip / $$MAKE < prev    next >
Text File  |  1992-04-13  |  4KB  |  97 lines

  1. PROC 2 GMBR GDSN
  2. /*===================================================================*/
  3. /*  IBM C MAKE clist.  This will compile and link edit a basic       */
  4. /*  IBM C program.                                                   */
  5. /*                                                                   */
  6. /*  NOTE:  if the member name ENDS with "PTSK", it is assumed that   */
  7. /*         the module is intended to be an MTF subtask module and    */
  8. /*         the appropriate parallel functions load module linkedited */
  9. /*         with it.                                                  */
  10. /*                                                                   */
  11. /*         The IBM/C TCP/IP include file is part of this compile     */
  12. /*         deck.                                                     */
  13. /*===================================================================*/
  14. GLOBAL GCHAR
  15. NGLOBAL MBR,DSN,JOB,NOTIFY,OBJDSN,CLASS,OPTI,CFLAGS,DEBUG,SN,A31,A24
  16. NGLOBAL PGM,SYSLMOD,AUTOSAVE,LNKTAO,LNKUD,LNKSA,COMPDEV,MTFSUBT
  17.  
  18. SET MBR    =&NRSTR(&GMBR)            /* So we can 'NGLOBAL' the name */
  19. SET DSN    =&NRSTR(&GDSN)            /* "                          " */
  20. /*===================================================================*/
  21. /* Define the various options we want.                               */
  22. /*===================================================================*/
  23. %NEXTCHAR
  24. SET PGM    =&MBR                     /* Program name */
  25. SET SYSLMOD=SYS0008.USER.LOADLIB     /* Linkedit target */
  26. SET JOB    =&NRSTR(&SYSUID)&GCHAR    /* How to name the jobs */
  27. SET NOTIFY =&SYSUID                  /* Notify target */
  28. SET OBJDSN =SYS0008.USER.OBJ         /* Where the objects go */
  29. SET CLASS  =1                        /* Job class */
  30. /*SET OPTI   =OPTIM,TI,INLO          /* Optimize options */
  31. SET OPTI   =                         /* Optimize options */
  32. SET CFLAGS =REQ,BI(1),NOTRA          /* General compiler flags */
  33. SET DEBUG  =                         /* Debug options */
  34. SET SN     =&NRSTR(&MBR)             /* Section name (CSECT name stub)*/
  35. SET A31    =DEF(_AMODE31)            /* AMODE defs */
  36. /* SET A24=DEF(_AMODE24)
  37. SET A24= 
  38. SET AUTOSAVE=YES                     /* Do SAVE for specific compiles */
  39. SET SASCVER=C500                     /* Middle qualifier for sas/c */
  40. SET LNKTAO=N
  41. SET LNKUD=N
  42. SET LNKSA=N
  43. SET COMPDEV=Y
  44. SET MTFSUBT = N
  45. SET COMPDEV=Y
  46. IF &MBR = TCPSUBR THEN +
  47. DO
  48.     SET MBR = TCPIP
  49.     SET PGM = TCPIP
  50. END
  51. /*==================================================================*/
  52. /*              END OF CUSTOMIZATION VARIABLES                      */
  53. /*==================================================================*/
  54. SYSCALL ICOMPLNK
  55. /*===================================================================*/
  56. /*    COMPILE Procedure.                                             */
  57. /*===================================================================*/
  58. /*===================================================================*/
  59. /*    IBM C COMPILE/LINK PROCEDURE.                                  */
  60. /*===================================================================*/
  61. ICOMPLNK: PROC 0
  62. SET TSKST = &LENGTH(&NRSTR(&MBR))-3
  63. IF &TSKST < 1 THEN SET TSKST = 1
  64. IF &SUBSTR(&TSKST:&LENGTH(&MBR),&NRSTR(&MBR)) = PTSK THEN SET MTFSUBT=Y
  65. IF &AUTOSAVE=YES THEN ISREDIT SAVE
  66. IF &LENGTH(&NRSTR(&JOB)) > 8 THEN SET JOB=&SUBSTR(1:8,&NRSTR(&JOB))
  67. XSUBMIT -C
  68. X //&JOB JOB SYSTEMS,SYSTEMS,CLASS=&CLASS,MSGCLASS=X,
  69. X //             MSGLEVEL=(1,1),REGION=4096K,NOTIFY=&NOTIFY
  70. X //STEP1    EXEC EDCCL,CREGSIZ=4000K,
  71. X // PARM.COMPILE=('AGGREGATE,SOURCE,NOSEQ,MARGINS(1,72),UPCONV',
  72. X // 'DEFINE(IBMC),DEFINE(MVS)'),
  73. X // PARM.LKED='LIST,MAP,AMODE=31,RMODE=ANY,RENT,REUS'
  74. X //COMPILE.SYSIN DD DSN=&DSN(&MBR),DISP=SHR
  75. X //COMPILE.SYSLIB DD
  76. X //  DD DSN=TCPIP.V2R1.COMMMAC,DISP=SHR
  77. X //  DD DSN=TCPIP.V2R1.AEZAMAC2,DISP=SHR
  78. X //COMPILE.USERLIB DD DSN=&DSN,DISP=SHR
  79. X //LKED.SYSLIB DD
  80. X // DD
  81. X // DD DSN=TCPIP.V2R1.COMMTXT,DISP=SHR
  82. IF &MTFSUBT=Y THEN +
  83. DO
  84.     X //LKED.SYSLIN  DD
  85.     X //             DD *
  86.     X    MODE AMODE(31) RMODE(31)
  87.     X    INCLUDE SYSLIB(IUCVFORC)
  88.     X    INCLUDE SYSLIB(EDCMTFS)
  89.     X    ENTRY CEESTART
  90.     X    NAME &PGM(R)
  91.     X /* 
  92. END
  93. X //LKED.SYSLMOD DD DSN=&SYSLMOD(&PGM),DISP=(SHR,PASS),
  94. X //  UNIT=,SPACE=
  95. XEND
  96. END
  97.